﻿using DarkSKL_Core.MongoDBModules.Models;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;

namespace Dark_Core_Server.Models.User
{
    /// <summary>
    /// 用户资料文档
    /// </summary>
    public class UserProfileDocument : DocumentUnit
    {
        /// <summary>
        /// 头像URL
        /// </summary>
        [BsonRepresentation(BsonType.String)]
        [BsonElement("AvatarUrl")]
        public string AvatarUrl { set; get; } = "#";
        /// <summary>
        /// 签名信息
        /// </summary>
        [BsonRepresentation(BsonType.String)]
        [BsonElement("Signature")]
        public string Signature { set; get; } = "这个人很懒，什么都没留下...";
        /// <summary>
        /// 可用Token数量
        /// </summary>
        [BsonRepresentation(BsonType.Double)]
        [BsonElement("ResidualToken")]
        public double ResidualToken { set; get; } = 0.0;
        /// <summary>
        /// 用户邮箱
        /// </summary>
        [BsonElement("Email")]
        [BsonRepresentation(BsonType.String)]
        public string Email { set; get; } = "";
        /// <summary>
        /// 用户性别
        /// </summary>
        [BsonElement("Gender")]
        [BsonRepresentation(BsonType.String)]
        public string Gender { set; get; } = "";
        /// <summary>
        /// 用户昵称
        /// </summary>
        [BsonElement("NickName")]
        [BsonRepresentation(BsonType.String)]
        public string NickName { set; get; } = "无名氏";

        [BsonElement("BasicId")]
        [BsonRepresentation(BsonType.ObjectId)]
        public ObjectId BasicId { set; get; } = ObjectId.Empty;

    }
}
